Systems for navigating the features, options and controls of computer programs that make use of graphical user interfaces (GUIs) are well known for computing devices. For example, typical navigation systems for these devices permit a user to navigate within a computer program by selecting options located on control bars, drop-down menus, or links within the current view. With these navigation systems, only one page of a computer program is usually shown at a particular time. As a user navigates through multiple levels of a computer program, it is easy for the user to become lost within the computer program. Unless a user remembers what choices he has made in navigating to his present location, he often forgets how deep he is into the computer program. Thus, time is lost as the user navigates back through different views and through different levels to become re-oriented and to change locations within the computer program.
Some navigation systems have addressed this issue by providing text dialogs on top of one another that indicate the user's location as he proceeds deeper into a computer program. Other systems have addressed this issue by stacking each succeeding view on top of the proceeding view as the user progresses into the computer program and allowing the user to select a previous view layer by selecting the frame for a previous view. Yet other systems display a hierarchy of options along one side of the primary view showing levels and sublevels for options that have been selected. Although these alternatives are helpful, they do not provide the user with a single map or an overall view that shows the user's location within the computer program at a given time. Further, these options may be difficult to implement on small displays, such as may be found on handheld computers or mobile terminal devices.